CentOS 7
Sponsored Link

Install PHP 7.2
2018/01/23
 
The version of PHP in CentOS 7 repository is 5.4 but Install 7.2 with RPM package if you need.
[1] It's possible to install from Remi's Repository.
It's OK to install it even if 5.4 is already installed because 7.2 is located on another PATH.
[root@dlp ~]#
yum --enablerepo=remi-safe -y install php72 php72-php-pear php72-php-mbstring
[2] PHP 7.2 is installed under the /opt directory and the link "/bin/php72" is created.
If you'd like to access with "php", Load Environment variables like follows.
[root@dlp ~]#
php72 -v

PHP 7.2.1 (cli) (built: Jan 3 2018 07:51:38) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2017 Zend Technologies
[root@dlp ~]#
which php72

/bin/php72
[root@dlp ~]#
ll /bin/php72

lrwxrwxrwx. 1 root root 32 Jan 24 09:32 /bin/php72 -> /opt/remi/php72/root/usr/bin/php
# load environment variables with SCL tool

[root@dlp ~]#
scl enable php72 bash

[root@dlp ~]#
php -v

PHP 7.2.1 (cli) (built: Jan 3 2018 07:51:38) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2017 Zend Technologies
[3] If you'd like to enable PHP 7.2 automatically at login time, configure like follows.
[root@dlp ~]#
vi /etc/profile.d/php72.sh
# create new

#!/bin/bash

source /opt/remi/php72/enable
export X_SCLS="`scl enable php72 'echo $X_SCLS'`"
[4] To use 7.2 on Apache httpd, Configure PHP-FPM like follows.
# install from Remi

[root@dlp ~]#
yum --enablerepo=remi-safe -y install php72-php-fpm
[root@dlp ~]#
vi /etc/httpd/conf.d/php.conf
# line 5: change like follows

<FilesMatch \.php$>
#
    SetHandler application/x-httpd-php
    SetHandler "proxy:fcgi://127.0.0.1:9000"

</FilesMatch>
[root@dlp ~]#
systemctl start php72-php-fpm

[root@dlp ~]#
systemctl enable php72-php-fpm

[root@dlp ~]#
systemctl restart httpd

[5] If you'd like to use 7.2 as embedded on Apache httpd, Configure like follows.
# install from Remi

[root@dlp ~]#
yum --enablerepo=remi-safe -y install php72-php
# rename and disable the old version if it exists

[root@dlp ~]#
mv /etc/httpd/conf.modules.d/10-php.conf /etc/httpd/conf.modules.d/10-php.conf.org

[root@dlp ~]#
systemctl restart httpd

# create phpinfo to verify working

[root@dlp ~]#
echo '<?php phpinfo(); ?>' > /var/www/html/info.php

[root@dlp ~]#
curl http://localhost/info.php | grep 'PHP Version' | tail -1 | sed -e 's/<[^>]*>//g'

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 69081    0 69081    0     0  3107k      0 --:--:-- --:--:-- --:--:-- 3212k
PHP Version 7.2.1
 
Tweet